Copyright: ® 1990-1994 Software Eclectics, Inc.


Contents
SE/One

© Copyright 1990-1994 by

Software Eclectics, Inc.
Suite 131
10955 Jones Bridge Rd.
Alpharetta GA  30202
404    667 - 9117

  Description

  Summary of Features

  Reports

  Annotations

  Interactive Analysis

  Cross-Referencing

          Detailed Table of Contents


ID_BadID
This Topic Will Never Appear

But if it does,

Please contact Software Eclectics, Inc.

404	667-9117

667-9117   fax


Detailed Table of Contents

[Click on any topic to go there.]

Description

Summary of Features

Main Menu

     File Menu

          Analyzing a Program

               Selecting a Program to Analyze

               Reports

                    Metrics Report

                         Measures

                         Line Counts

                         Verb Counts

                         CICS Command Counts

                    Subroutine Hierarchy Chart

                         Subroutines

                         Counts

                         Warnings

                    Procedure Division Structure

                         Symbols

                         Names

                         Unnamed

                         Verb Counts

                    Source Code Directory

                         File Names

                         Source Code Views

                         Called Programs

               Interactive Analysis

                    Interactive View ToolBar

                         Comments Toggle

                         Copied Code Toggle

                         Periods Toggle

                         Direct/Implied Toggle

                         Filter Toggle

                         Filter Selection

                              Notes Filter

                              Outline Filter

                              D-Ray Filter

                              Control-Flow Filter

                              Input/Output Filter

                              CICS Filter

                              Data/Procedure Name Filter

                         Viewing Notes

                         Data Items Used

                    Interactive Text

                         Book and Line Numbering

               Print a View

               Close an Analysis

          Cross-Referencing

               Selecting Progams to CrossReference

               Reports

                    Copies Report

                    Copied-By Report

                    Calls Report

                    Called-By Report

          Indexing a Program

               Adjusting the Indexing Operation

               Creating Notes

               Indexing Progress

          Exit from SE/One

     Options Menu

          Set Libraries

          Set Colors

          Save Options Settings

     Window Menu

     Help Menu

Annotations

     000-099  Errors

     100-199  Extensions

     300-399  Warnings

     500-699  Unreferenced Names

     700-799  Standards Violations

The SE1.INI File

     [libraries]

     [colors]

     [extensions]

Glossary


Description

SE/One from Software Eclectics is a powerful COBOL program understanding tool that can be used on batch or CICS programs.  A 15,000 line COBOL program is a mass of detail.  If you want to see the forest, and the trees, SE/One will help.

SE/One provides summary, overview reports that help you get that Big Picture quickly.  And these reports help you identify weaknesses and danger points in the COBOL program; allowing you to do pro-active maintenance ... before the program crashes.

SE/One will annotate the COBOL program to reveal technically correct but unsafe coding practices and violations of your installation's standards.

SE/One can create reports that cross-reference a set of COBOL programs; revealing for both copy books and called subprograms who uses whom and where they are used.

SE/One supports an interactive, question and answer type analysis of the COBOL program.  It helps you analyze the COBOL program as a COBOL program, not just a file of text.  You can create multiple Interactive Views at the same time, each tailored to show those aspects of the COBOL program you wish to see.


Summary of Features

Metrics Report

McCabe Cyclometric Complexity Measure

Gill-Kemerer Complexity Density

standard lines of code measure

code/comment line counts per division

usage count of COBOL verbs

usage count of CICS commands

Subroutine Hierarchy Chart

lists each performed subroutine

shows number of subroutine appearances

flags GOTO jumps into or out of performed range

creates interactive view of subroutine by click of the mouse

Procedure Division Structure

sections and paragraphs performed

names referenced by ALTER statements

paragraphs and sections that are targets of GOTOs

COBOL verb count

missing paragraphs and section names

creates interactive view of sections or paragraphs by click of the mouse

Source Code Directory

copy library usage

load library usage

creates view showing contents of source code files by click of the mouse

Annotations

violations of your installation standards

use of extensions to standard COBOL

invalid section/paragraph structure

performed ranges that are mal-formed

GOTOs in or out of performed range

ALTER statement

names that are defined but not used

names that are used but not defined

missing periods

Interactive Analysis

Selectivity

abstract view

focused view when needed

Implied References...  shows uses of and modifications to a data item, even when the reference is to a group or subordinate name

Multiple Concurrent Views

PopUp Definitions...  mouse click to define data or procedure reference

Data Usage List

Flow Tracing

Comments...  can be suppressed or shown by mouse click

Copy Books...  can be detailed or hidden by mouse click

Emphasized Periods...  mouse click to turn on/off

Highlighting...  user chooses which aspects to highlight

Logical Tabbing...  forward or back to the next highlighted line

Filtering...  highlighted lines can be selected to be shown alone

Cross-Reference Reports

COPY books used by each program

which program(s) use each COPY book

subprograms CALLed by each program

which program(s) CALL each subprogram


Main Menu

[For help on a menu item, click on it.]


File Menu

[For help on a menu item, click on it.]


Analyzing a program

SE/One provides summary, overview reports that help you get the Big Picture quickly.  And these reports help identify weaknesses and danger points in the COBOL program, allowing pro-active maintenance ... before the program crashes.

SE/One also provides powerful features for an interactive, question and answer type analysis of the COBOL program. They allow you to analyze the COBOL program as a COBOL program, not just a file of text.  They give you the power to follow logic flow, hide or show comments, and select the aspects of the program that you wish to see.

Selecting a Program to Analyze

 	Reports

 	Interactive Analysis

 	Print this view

 	Close this analysis


Selecting a Program to Analyze

Select an index file (*.CBX) in order to analyze the corresponding COBOL program.  These index files must have been  created earlier using the indexing operation.


Reports

The first four buttons on the analysis tool bar give you access to the reports.

Metrics report.

 	Subroutine hierarchy chart.

 	Procedure Division Outline.

 	Source Code Directory.


Metrics Report

The metrics report provides some basic information about this program.

[Click on any item of interest.]


Measures

These numbers show the McCabe Cyclometric Complexity measure for this program. Also shown is the total number of Source-Lines-Of-Code and the Complexity Density defined by Gill & Kemerer; IEEE Transactions on Software Engineering, Vol. 17, No. 12, Dec91.


Line Counts

This table shows the first and last overall line number of each COBOL program division. It also shows, for each division, the number of Source-Lines-Of-Code and the number of comment lines.  These counts are all taken after inclusion of all COPY books.  For counts by individual source code file, see the Source Code Directory.


Verb Usage Counts

This list is a count of the number of times each COBOL verb is used in this program.


CICS Command Counts

This list is a count of the number of times each CICS command verb is used in this program.


Subroutine Hierarchy Chart

The subroutine hierarchy chart lists each performed subroutine and indicates who-performs-whom.

If you double-click on any line in this report, SE/One will create an Interactive View of that subroutine.

[Click on any item of interest.]


Subroutines

Each performed range is shown in this chart.


Subroutine Counts

The count shows the number of times this subroutine appears in the chart.


Jump Flags

This flag shows that there is a GOTO that jumps into or out of this subroutine.  These are also shown in the Procedure Division Structure report.


Procedure Division Structure

This report shows each section and paragraph of the COBOL program.

This report of the procedure division provides an overview that lets you make sense of what would otherwise be a mass of detail.  It also highlights potential trouble areas so they can be fixed before they cause a disaster.

If you double-click on any line in this report, SE/One will create an Interactive View of that section or paragraph.

[Click on any item of interest.]


Structure Symbols

These indicate a PERFORMed range.  The thin line is used if the range is performed from only one place.

These indicate a range PERFORMed without using the THRU option of the PERFORM statement.

Indicates a paragraph that is the target of a GOTO.

Indicates a paragraph that contains a GOTO itself; i.e., a loop.

Indicate a GOTO that transfers into or out of a PERFORMed range.


Procedure Names

The name of each section and paragraph in the COBOL program is shown.  This forms an outline of the procedure division.


Unnamed Paragraphs

If there is COBOL coding that is not properly contained in a paragraph, SE/One will show "(unnamed)" as the paragraph name.  Also if there is an unnamed section at the start of the procedure division, SE/One will show that similarly.


Verb Counts

The number of COBOL verbs in each paragraph is indicated by the number to the right of its name.


Source Code Directory

The source code directory provides information about this program's copy- and load-library usages.

If you double-click on the name of any source code file in this report, SE/One will create a view showing you the contents of that file.

[Click on any item of interest.]


Source File Names

This list shows all COPY books referenced in this COBOL program. The number to the left of the name is the assigned COPY book number. All lines in Interactive Views that came from this copy book will show this number.


Source Code View

This view shows you the original program or copy book source code file.  The numbers shown on the leftare the line numbers in the source file.


Called Programs

This list shows all sub-programs CALLed by this COBOL program. The number to the right of the name shows how many places CALL this sub-program.


Interactive Views

SE/One is a powerful tool to help you understand a COBOL program.  You can use SE/One to focus in on just that aspect of the COBOL program that you need to see.

SE/One will help you to determine such things as how a particular variable is used, what data is used by a given subroutine, from where a procedure is called, the pattern of I/O operations, etc.

SE/One allows you to have as many views of the COBOL program as you wish at the same time.  You can have multiple views of the same program division, each one presented in a different way.  You can also have views of different program sections.

  Interactive View Tool Bar

  Interactive Text


Interactive View ToolBar

Show or hide COBOL comments.

Show or hide COPYed code.

Show large periods.

Show Direct only or direct and Implied references.

Show all lines, or only filtered lines.

Select a name or subject for the filter.

Select which notes are to be shown.

Data names used in this program code.


 Comments Toggle

Clicking this button allows you to see or suppress COBOL comment lines.  This option can be set separately for each Interactive View.


 Copied Code Toggle

Clicking this button allows you to see or suppress the lines brought into the COBOL program from COPY books. If this option is unchecked, you will see the COPY ... statements in the main program, but you will not see the individual lines of that COPY book. This option can be set separately for each Interactive View.


 Periods Toggle

This button toggles how periods at the end of sentences are shown in an Interactive View of all or part of the Procedure Division.  When off, periods will be shown normally.  When on, periods will be shown as ¤ characters, in the color you have selected. This option can be set separately for each Interactive View.


Direct/Implied Toggle

If this option is checked, this Interactive View will show implied references to the selected data/procedure name.


Filter Toggle

If this option is checked [image], this Interactive View will show only those lines that pass the chosen filter.  If this is unchecked [image] , all lines will be shown.  The current filter selection is shown in the drop-down list-box in the tool bar.

For example, once you have chosen to filter for Outline items, choosing [image] will show you an outline of that section of the COBOL program.

Or if you have chosen to filter on use of a particular data name, choosing [image] will show only those lines that reference that name.  This is a keyword-in-context view of the program.

You can quickly create an unfiltered view based on any line in a filtered view.  If you double-click with the RIGHT mouse button on the line that you are interested in, SE/One will create a new unfiltered Interactive View that overlaps this view, with the position of the indicated line as close as possible in each view.


Filter Selection

This pull-down list lets you set your choice for what you want to filter for in this Interactive View.  The selected filter is used both by the 'filter' operation and by the TAB key.

[Click on any item of interest.]


Notes Filter

This filter will pass those lines that have been marked with an annotation.


Outline Filter

This filter will pass those lines that make up an outline of the part of the program shown.  For the data division that includes section declarations, FD, SD, and 01-level data names.  For the procedure division it includes section and paragraph declarations.


D-Ray Filter

This filter will pass those lines that are involved in date operations.  For the data division, that includes all fields that appear to contain a date value.  For the procedure division, it includes all statements that reference those fields.

If you are searching for 'Year 2000' problems, this is the filter to use.


Control-flow Filter

This filter will pass statements that control the logical flow of the program; PERFORMs, GOTOs, STOP RUN, etc.  These show you the skeleton of the procedure division, a sort of X-ray.


Input/Output Filter

This filter will pass statements that control the I/O operations of the program; OPEN, READ, START, etc.  You will be able to quickly see where each file is read or written.


CICS Filter

This filter will pass the CICS commands.  These will be the CICS commands as written by the programmer, not the obscure moves and calls created by the preprocessor.  It is only available when analyzing a CICS program.


Data/Procedure Name Filter

This filter will pass all statements that use the selected data or procedure name.  There will be two names available on this filter selection list:  the selected name in this Interactive View, and the most recently selected name in any Interactive View.


Setting Notes Visible

This dialog lets you set your choice for which notes you want to be indicated in this Interactive View.


Data Items Used

This pull-down list shows you all the data items that are referenced in the part of the COBOL program shown in this Interactive View.

The first character of each line indicates whether this data item is

-   used but not modified

+   modified but not used

±   used and modified

The number indicates how many references there are to this data item in this part. (1 is shown as blank, greater than 99 is shown as **.)

If the number is followed by a '+', this data item is also referenced outside of this part.

If you click on any item in this list, it will be selected.

If you double-click on any item in this list, SE/One will create an Interactive View of its definition.


Print a View

Print the active view.


Close an Analysis

Close all windows of this analysis.


Interactive Text

Clicking on any data or procedure name will cause that name to be selected.  That name will also become available for use in a Filter.

Double-clicking on any data or procedure name will cause SE/One to create another Interactive View showing the definition of that name.  For a data name the view will include the record (01) that defines the name.  For a procedure name, this can be used to trace program flow.

Right-clicking on an underline indicating an annnotation will cause SE/One to pop up a box showing the note(s).

The TAB key is intelligent in an Interactive View.  If the Filter toggle is set to all, pressing the TAB key will scroll the view to the next line that passes the filter.  Pressing Shift+TAB will scroll backwards to the previous such line.

If the Filter toggle is set to ONLY, only lines that pass the filter will be shown in the view.  If you right-double-click on any line shown in such a filtered view, SE/One will create a new view of the same part of the COBOL program, but with the Filter toggle set to ALL.

[Click on any item of interest.]


Book and Line Numbering

The (book and) line numbering used in SE/One shows you the number of each line within its original source-code file.

If the line came from the main COBOL program file, the book number will be blank. If it came from a copy book, the number of that copy book will be shown.

A directory of all copy books and their assigned numbers is shown in the Source Code Directory.

Example--

3:   145


Cross-Referencing

SE/One can produce reports that show the usage of COPY books and CALLed subprograms across multiple programs.


Selecting Programs to CrossReference

To produce these reports, select CrossReference from the File menu.  Then select those programs that you want included in the reports.


CrossReference Reports

By clicking on the tool bar, you can see the reports you want.  The reports available show, for each program, which COPY books are used or which subprograms are CALLed.  You can also see reports that show the inverse; which progams use each COPY book or which programs CALL each subprogram.


Copies Report

This report shows, for each program in the selected group, the copy books that it uses.


Copied-By Report

This report shows, for each program in the selected group, which programs use each copy book that is used by any one of them.


Calls Report

This report shows, for each program in the selected group, which subporgrams that it calls.


Called-By Report

This report shows, for each program in the selected group, which programs call each subprogram that is called by any one of them.


Indexing

In order to analyze a COBOL program, SE/One must first create an index for it.  The index is stored as a *.CBX file in the appropriate directory.

  Adjusting the Indexing Operation

  Creating Annotations

  Indexing Progress


Adjusting the Indexing Operation

To proceed with the indexing, SE/One uses the extension of the COBOL source program file you selected to set two controls.  You will then be shown a dialog allowing you to over-ride the assumed values of those controls.

The drop-down list box allows you to specify which dialect of the COBOL language this program was written in.

The "Set Notes..." dialog allows you to specify which annotations may be created.


Creating Annotations

When SE/One is indexing a COBOL program, it will make notes about those things it finds that are incorrect, unsafe, or violate your installation standards.  You can control what conditions will be noted and which notes will be suppressed.


Indexing Progress

While SE/One is indexing the COBOL program it will report to you how it is doing.

SE/One will take about one minute to index a 3000 line source program on a 386SX-16 machine.  It will be correspondingly faster on a faster computer.

You can run other programs while SE/One is indexing, it does not hog the machine.  You can cancel the indexing at any time by clicking on the "Cancel" button.


Exit from SE/One

Exit from SE/One.


Options Menu


Set Libraries

Set the assumed libraries.

[Click on any item of interest.]


Set Colors

In SE/One Interactive Views, there are six items that have a color setting:

notes
the underline used to indicate an annotation

used
use of the selected name where the value of the item is not changed

used_imp
implied use of the selected name where the value of the item is not changed

modified
use of the selected name where the value of the item is changed

modified_imp
implied use of the selected name where the value of the item is changed

periods
enlarged sentence-ending periods

These menu selections provide access to the standard MS Windows color selection dialog.


Save Options Settings

Save the current settings of the options [libraries] and [colors] into SE1.INI.


Window Menu

While analyzing a COBOL program, , you can use the choices in this menu to arrange the windows that you have open.  The available options,  Cascade,  Tile,  and  Arrange Icons,  are standard MS Windows operations.  Please see your MS Windows User's Guide for details.


Help Menu

The options  Help,  Using Help,  and  About  are standard MS Windows operations.  Please see your MS Windows User's Guide for details.


Annotations

You can control what notes SE/One can create during the indexing operation.

Individually in each Interactive View, you can control what notes SE/One will show.  However if, for example, you told SE/One not to create any note 109 during indexing a particualr program, you could not later ask SE/One to show any note 109 in that program during analysis.  But you could re-index that program, allowing note 109; then they would be available..

Not all notes can occur in all situations. For example, "106 - THEN in IF statement" would not be flagged in a COBOL program written in a COBOL dialect based on ANSI-85.

 000-099 Errors

 100-199 Extensions

 300-399 Warnings

 500-699 Unreferenced Names

 700-799 Standards Violations


000-099   Errors

These notes refer to actual incorrect coding.

001  syntax error

002  parsing restarted
If, while indexing, SE/One cannot understand a part of the COBOL program, it will skip it and mark the beginning and end with these notes.

003  missing period
If SE/One finds that the programmer omitted a required period, it will process the code as though there was a period there.

004  invalid COPY statement
The indicated COPY statement was not properly coded.

005  undefined data name

006  undefined procedure name
The indicated data or procedure name is being used without ever having been defined in the COBOL program.

007  illegal with CICS
The indicated COBOL verb or option should not be used in a CICS program.

008  invalid EXIT paragraph
The EXIT verb may only be used as the only verb in a paragraph.

009  missing COPY book
SE/One was unable to find the indicated COPY book in the copy book library and with the extension defined in the SE1.INI file.

010  no SELECT for this file
The indicated FD or SD name was not specified in a SELECT statement in the Environment Division.

011  name more than 30 characters
The indicated data or procedure name is longer than 30 characters.


100-199   Extensions

These notes refer to the use of features that are not in the standard language, but which are allowed by some COBOL compilers.

101  omitted section header

102  omitted paragraph header

103  ID for IDENTIFICATION

104  COMP-3/COMP-4 used

105  program-name in quotation marks

106  THEN in IF statement

107  OTHERWISE for ELSE

108  special register

109  FILLER used as group name

110  EQUAL for =

111  ARE for IS

112  IS for ARE

113  RECORDING MODE used

114  old-style COPY book

115  COMP-1/COMP-2 used

116  DBCS data item

117  POINTER data item


300-399   Warnings

These notes refer to COBOL coding that, although not actually incorrect, may be the symptom of an error in program design or coding.

301  PERFORM range is backwards
For example, if there are three paragraphs, A, B, and C, in that order in the COBOL program, a statement saying "PERFORM C THRU A" would be flagged with this note.

302  PERFORM statement is within range performed
For example, if there are three paragraphs, A, B, and C, in that order in the COBOL program, a statement in paragraph B saying "PERFORM A THRU C" would be flagged with this note.

303  ALTER used

304  ALTERed GOto
Most sites agree that the use of the ALTER verb is VERY poor programming practice.

305  transfer out-of/into performed range
This note marks a GO TO that is in a performed range, but it transfers control to a label outside of that range.  It is also used to flag a GO TO that is outside a performed range, but that transfers control into that range.

306  exit paragraph not at end of range
This note marks an EXIT paragraph when there is no perform that refers to it as the end of a range to be performed.


500-699   Unreferenced Names

These notes refer to data or procedure names that are defined but never used.  A 5nn note and the corresponding 6nn note are identical except that 6nn is used to mark a name that was brought into the COBOL program via a copy book.

501/601  unreferenced group
The indicated name was not used anywhere in the program.  Also, it is a group data name and none of its subordinate fields or conditions are referenced.

502/602  unreferenced data name
The indicated name was not used anywhere in the program.  However, it is a group data name and one or more of its subordinate fields or conditions are referenced.

503/603  unreferenced data item

504/604  unreferenced condition name

505/605  unreferenced index name

511/611  unreferenced section

512/612  unreferenced paragraph
The indicated name was not used anywhere in the program.

513/613  unreferenced section

514/614  unreferenced paragraph
(name required)   The indicated name was not used anywhere in the program, but the COBOL language rules require a name here.

515/615  unreferenced section

516/616  unreferenced paragraph
(required for closure)   The indicated name was not used anywhere in the program, but it is required in order to close out the preceding section or paragraph.


700-799   Standards Violations

These notes refer to violations of established programming standards.  You should disable those that do not apply to your site by making the appropriate entries in the [extensions] section of your SE1.INI file.

701  THROUGH omitted

702  THROUGH used
At some sites, the coding standards require every PERFORM to be of the form "PERFORM A THRU B", at other sites the use of THRU is forbidden.  You should set your SE1.INI controls to reflect your standards: "702" to enforce the use of THRU, or "701" to enforce the omission of THRU, or "701702" if you don't care either way.

703  CORRESPONDING used

704  loop, s/b PERFORM VARYING/UNTIL

705  GOto target not an EXIT paragraph
This note should be allowed at those sites that permit GOTO only when it is a transfer to the EXIT paragraph of a performed range.

706  77-level data declaration

707  all-numeric section/paragraph name

708  should use EXEC CICS RETURN


The SE1.INI File

SE/One uses three groups of controls during operation.  These controls are set, when SE/One begins, by reading the entries in the SE1.INI file contained in the same subdirectory where the SE1.EXE file was found.

You can change the libraries and/or colors options for a particular use of SE/One through the Options menu.  Any changes you make will be in effect only for that run of SE/One unless you select the "save settings" menu option.

An example SE1.INI file is:

[libraries]

index=C:\SE1\INDEX

program=C:\SE1\PROGRAM

copy=C:\SE1\COPY

CopyExtension=CPY

format=2

[colors]

notes=192 000 192

used=000 128 000

used-imp=000 128 000

modified=255 000 000

modified-imp=255 000 000

period=000 000 255

[extensions]

COB=1,-007-104-6??-702

CBL=2,-104-6??-702


[libraries]

In addition to the directory containing the SE1 program, .INI file, help text, and dialect definition files, SE/One uses three other directories:

index= a directory in which SE/One will save the index files it creates

program= a directory containing the COBOL program source code files

copy= a directory containing the COBOL copy book files

When you first install SE/One, the Setup procedure will create these directories within the SE1 directory if they do not yet exist.  These three directories can actually be the same directory, although we recommend that at least the index directory be separate.

SE/One also needs to know the extension to be used for copy book names, and the format of the source code files.

An example is:

[libraries]

index=C:\SE1\INDEX

program=C:\SE1\PROGRAM

copy=C:\SE1\COPY

CopyExtension=CPY

format=2


[colors]

This section of the SE1.INI file is used to specify the colors to be used for:

notes= the underline indicating a Note

used= a reference to the selected procedure or data name where the value is used but not modified

used-imp= a reference to a name that implies a reference to the selected procedure or data name where the value is used but not modified

modified= a reference to the selected procedure or data name where the value is modified

modified-imp= a reference to a name that implies a reference to the selected procedure or data name where the value is modified

period= emphasized periods in a Procedure Division Interactive View

The color wanted is specified by its three values: red, green, blue.

In this example, the colors are as shown above:

[colors]

notes=192 000 192

used=000 255 000

used-imp=000 255 000

modified=255 000 000

modified-imp=255 000 000

period=000 000 255


[extensions]

These controls list the various extensions for the COBOL source program files and the COBOL dialect and Notes processing to be used for each extension.  You can use these controls to adjust SE/One to your installations standards and practices.

If you ask SE/One to index a source program file for which the extension is not listed, SE/One will use the values coded with the first extension in this list.

There are two values coded for each extension specified: the first is the code number for the COBOL language dialect in which these programs were written; and the second is a string listing those notes which are to be suppressed.  When listing note codes, the wild-card character '?' may be used to indicate a range of codes; for example, 51? means codes 510 through 519 and 6?? means codes 600 through 699.

For example:

CBL=2,-104-6??-702

indicates that source program files with the extension "CBL" are to be processed as IBM VS COBOL with CICS; and notes 104, 600 thru 699, and 702 are to be suppressed.


COBOL Dialects

SE/One can process programs written in any of several versions of the COBOL language:

based on ANSI-74 COBOL;

  1 -- IBM VS COBOL

  2 -- IBM VS COBOL with command-level CICS

  3 -- Unisys A Series COBOL ANSI-74

based on ANSI-85 COBOL;

31 -- IBM VS COBOL II

32 -- IBM VS COBOL II with command-level CICS

[Check the README.WRI file for the latest additions to this list.]

SE/One needs to be told which language version a program is written in when you are indexing that program.  The index file that SE/One creates will save the information for your analysis of the program.

The easiest way to handle programs of more than one type is to assign each a unique extension.  You can then make matching entries in the [extensions] section of the SE1.INI file and SE/One will automatically use the correct language definition table (SE1GRM##.DAT) when indexing the program.  For example, you could store your plain COBOL programs with the COB extension and code COB=1,..... and store your CICS programs with the CBL extension and code CBL=2,..... in the SE1.INI entries.


Glossary

[Click on the term of interest.]

Comment

Format

Implied

Modified

Modified by Implication

Notes

RGB Codes

Selected Name

Used

Used by Implication


Comments

For SE/One, COBOL comment lines include lines marked with * or /; all-blank lines; CBL, SKIP, EJECT, and TITLE; lines containing only a COPY statement; and all lines in the ID DIVISION except the division header and PROGRAM-ID paragraph.


Source Code File Formats

You can keep the COBOL source code files on your disk in any of four formats (record layouts).  You decide when you install SE/One which format you will use, and make the proper entry in the [libraries] section in the SE1.INI file.  The possible formats and their codes are:

1 -- variable-length lines with CR/LF; COBOL program text

2 -- variable-length lines with CR/LF; 6 character sequence number field followed by COBOL program text

3 -- variable-length lines with CR/LF; 6 character sequence number field followed by 1 to 66 characters of COBOL program text with possible additional characters in positions 73 and up  (This is the most common format down-loaded from a main-frame computer.)

4 -- 80 character fixed-length without CR/LF; COBOL program text in positions 7 through 72 (card images)


Implied

A use of a data name or a procedure name is an implied reference to all contained or containing names.

For example, if we have

FOO SECTION

  FOOBAR.

then the reference to FOO in the statement

PERFORM FOO.

is a use of paragraph FOOBAR by implied reference.

Or if we have

01 FOO.

  ...

  05 FOOBAR   PIC X(5).

  ...

then the reference to FOOBAR in the statement

MOVE SPACES TO FOOBAR.

is a modification of FOO by implied reference.


Modified

A use of a data name or a procedure name where the value of the item is changed.

For example, in the statement

MOVE FOO TO FOOBAR.

the variable FOOBAR is modified.  (FOO is used.)


Modified by Implication

A use of a data name or a procedure name is an implied reference to all contained or containing names.

For example, if we have

01 FOO.

  ...

  05 FOOBAR   PIC X(5).

  ...

then the reference to FOOBAR in the statement

MOVE SPACES TO FOOBAR.

is a modification of FOO by implied reference.


Annotation
Notes

A note is created during indexing to indicate something of interest.  For example, it may be a coding error or a violation of your installation's standards.  You can control, by number, which notes can be created.

In an Interactive View, a note is shown by a colored line under the point of interest.  You can control, by number, which notes will be shown and which hidden.  If you right-click on the underlined character, an information box will pop up showing the text of the note.


RGB Codes

The available red-green-blue color codes are:

000, 000, 000     black

000, 000, 128     dark blue

000, 000, 255     blue

000, 128, 000     dark green

000, 128, 128     dark cyan

000, 255, 000     green

000, 255, 255     cyan

128, 000, 000     dark red

128, 000, 128     dark magenta

128, 128, 128     dark gray

192, 000, 192     magenta

192, 192, 000     dark yellow

192, 192, 192     light gray

255, 000, 000     red

255, 255, 000     yellow

255, 255, 255     white(white)


Selected Name

You can select any procedure- or data-name for analysis by clicking on it in:

an Interactive View,

the drop-down Data list from the analysis tool bar,

a Procedure Division Structure view.

A selected name will be shown in the appropriate color in an Interactive VIew.

It is also available for use in a filter.


Used

A use of a data name or a procedure name where the value of the item is not changed.

For example, in the statement

MOVE FOO TO FOOBAR.

the variable FOO is used.  (FOOBAR is modified.)


Used by Implication

A use of a data name or a procedure name is an implied reference to all contained or containing names.

For example, if we have

FOO SECTION

  FOOBAR.

then in the statement

PERFORM FOO.

the paragraph FOOBAR is used by implied reference.


Contents
SE/One

© Copyright 1990-1994 by

Software Eclectics, Inc.
Suite 131
10955 Jones Bridge Rd.
Alpharetta GA  30202
404    667 - 9117

  Description

  Summary of Features

  Reports

  Annotations

  Interactive Analysis

  Cross-Referencing

          Detailed Table of Contents


SE/One; COBOL Program Analysis

by  Software Eclectics, Inc.

This will show you some of the reporting and interactive analysis capabilities of SE/One.

Examine this demonstration program and help file.  If you agree that SE/One will be a powerful addition to your shop, just click on the "Ordering" button for information and an order form.


To Order SE/One

SE/One, the COBOL program analysis tool, has a list price of $495 (US).  Quantity discounts and site license plans are available.

It may be ordered from:

The Programmer's Shop

Hingham, MA  02043

800  544-8732

or directly from:

Software Eclectics, Inc.

Alpharetta, GA  30202

800  457-3113

     Print an Order Form


SE/One Order Form

Name:	________________________________________________________________

Title:	________________________________________________________________

Department:	________________________________________________________________

Company:	________________________________________________________________

Address:	________________________________________________________________

________________________________________________________________

City, State  Zip:	________________________________________________________________

Country	:	________________________________________________________________

Phone Number:	________________________________________________________________

Fax Number:	________________________________________________________________

COBOL Version(s) Used:_________________________________________________________

Number of COBOL Programmers at this location:___________________

Quantity discounts and site licenses available.  Contact the sales department.

  Yes, I want to order SE/One.  Please send me a copy ASAP!  I am paying by:

  Check Enclosed  (US Funds drawn on a US Bank)

  Mastercard/Visa______________________________________________________

Credit Card Number                                                         Expiration Date

________________________________________________________________

Cardholders Name

________________________________________________________________

Signature

  Purchase Order Attached (credit approved firms)

Fax this form to (404) 667-9417     Attn.:  SE/One Sales

Or, call 800-457-3113 in the US and Canada.  Outside, call 404-667-9117

Or, mail this form to :	Software Eclectics, Inc.

Sales Department

Suite 131

10955 Jones Bridge Road

Alpharetta, GA  30202-7343

USA